package com.industry.customer.dal.dataobject;

import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.industry.framework.core.annountions.record.IdooRecordBizType;
import com.industry.system.dal.dataobject.BaseEntity;
import java.io.Serializable;
import java.time.LocalDate;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 销售订单信息
 * </p>
 *
 * @author nbZhuoZh
 * @since 2025-05-21
 */
@Getter
@Setter
@TableName("crm_sale_order")
@IdooRecordBizType
public class CrmSaleOrder extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 租户编号
     */
    private String tenantId;

    /**
     * 部门ID；空则为公共客户数据
     */
    private String deptId;

    /**
     * 订单编号
     */
    private String cusSaleOrderCode;

    /**
     * 订单状态：待处理、生产中、已发货、已完成等（基于码表配置）
     */
    private String cudSaleOrderStatus;

    /**
     * 订单类型
     */
    private String cusSaleOrderType;

    /**
     * 负责人id
     */
    private String responsiblePersonId;

    /**
     * 订单等级 1，2，3
     */
    private String cusSaleOrderLevel;

    /**
     * 客户id
     */
    private String customerId;

    /**
     * 客户联系方式
     */
    private String customerPhone;

    /**
     * 客户收货地址
     */
    private String customerAddress;

    /**
     * 附加信息
     */
    private String cusSaleOrderRemark;

    /**
     * 交付日期
     */
    private LocalDate cusSaleDeliverDate;

    /**
     * 删除标记
     */
    @TableLogic
    private String delFlag;

    /**
     * 创建部门
     */
    private String createDept;
}
